// 在这里，您可以通过 'params'  获取节点中的输入变量，并通过 'ret' 输出结果
// 'params' 已经被正确地注入到环境中
// 下面是一个示例，获取节点输入中参数名为'input'的值：
// const input = params.input; 
// 下面是一个示例，输出一个包含多种数据类型的 'ret' 对象：
// const ret = { "name": '小明', "hobbies": ["看书", "旅游"] };
const random =(start:number,end:number)=>{
    const p =Math.random();
    return Math.floor(start*(1-p)+end*p);
}

async function main({ params }: Args): Promise<Output> {
    // 构建输出对象

    if(params.position == null){
        params.position = random(0,3);
    }
    if(params.shooting_hand == null){
        params.shooting_hand = random(0,1);
    }
    const style = params.style || '写实';
    const uniform_number = params.uniform_number || 10;
    const uniform_color = params.uniform_color || '红色';
    const position = params.position ==0?'守门员':(params.position ==1?'前锋':'后卫');
    const shooting_hand = params.shooting_hand== 0 ?'左手':'右手';

    const ret = {
        style,
        uniform_number,
        uniform_color,
        position,
        shooting_hand,

    };

    return ret;
}